knitr::opts_chunk$set(echo=F, warning=F, message = F)

style_table <- function(data){
  DT::datatable(
    data,
    options = list(scrollX = TRUE)
  )
}

add.name <- function(data, name){
  data$DataSet <- name
  return(data) 
}

comma.summary <- function(data, name){

  c(
    Dataset = name,
    `Comma prop` = sum(data[names(data) != 0 ])/sum(data)
  )
}

Overview

{
  library(tidyverse)
}

data.summary <- function(data) {
  modal <- data$Modal
  missing <- data$Missing

  c(`N var` = data$Dimensions[2],
    `N row` = data$Dimensions[1],
    "100% Missing" = sum(missing$Proportion == 1),
    "> 80% Missing" = sum(missing$Proportion != 1),
    "100% Modal" = sum(modal$Proportion == 1),
    "> 80% Modal" = sum(modal$Proportion != 1)
  )
}

data <- readRDS(params$path)

report <- do.call(rbind, lapply(data, data.summary)) 

as_tibble(report, rownames="Dataset") %>% style_table()

Missing Proportions

missing <- do.call(
  rbind, 
  lapply(names(data), function(i) add.name(data[[i]]$Missing, i))
) %>% 
  as_tibble()

if (dim(missing)[1] > 0){
  missing <- missing %>% mutate(
    Proportion = round(as.numeric(Proportion), 3)
  )
}

missing %>% style_table()

Modal Proportions

modal <- do.call(
  rbind, 
  lapply(names(data), function(i) add.name(data[[i]]$Modal, i))
) %>% 
  as_tibble()

if (dim(modal)[1] > 0){
  modal <- modal %>% mutate(
    Proportion = round(as.numeric(Proportion), 3)
  )
}

modal %>% style_table()

Comma Presense

comma <- do.call(
  rbind, 
  lapply(names(data), function(i) comma.summary(data[[i]]$Comma, i))
) %>% 
  as_tibble()

if (dim(comma)[1] > 0){
  comma <- comma %>% mutate(
    `Comma prop` = round(as.numeric(`Comma prop`), 3)
  )
}

comma %>% style_table()


Stat-Cook/Data.Quality.Reports documentation built on May 4, 2022, 2:21 p.m.